#include <stdio.h>

/*
如果函数返回一个结果，但是却不去使用它，则发出警告。
*/

/************************************************************************/
/*                                                                      */
/************************************************************************/
//警告： 忽略声明有 warn_unused_result 属性的‘fn’的返回值
int fn () __attribute__ ((warn_unused_result));

int fn(void)
{
    return 3;
}

int foo(void)
{
    if (fn() < 0)
        return -1;
    
    fn();
    
    return 0;
}
/************************************************************************/
/*                                                                      */
/************************************************************************/

int main(int argc, char* argv[])
{
    foo(); // calls foo
    
    return 0;
}